def get_multiplier(symbol: str) -> float:
    """获取品种的乘数"""
    # 移除可能的月份代码（如M25）
    base_symbol = symbol[:-3] if len(symbol) > 3 else symbol
    
    # 定义品种乘数映射
    multipliers = {
        'MES': 5.0,    # Micro E-mini S&P 500
        'MNQ': 2.0,    # Micro E-mini Nasdaq-100
        'MYM': 5.0,    # Micro E-mini Dow
        'M2K': 5.0,    # Micro E-mini Russell 2000
        'ES': 50.0,    # E-mini S&P 500
        'NQ': 20.0,    # E-mini Nasdaq-100
        'YM': 5.0,     # E-mini Dow
        'RTY': 50.0,   # E-mini Russell 2000
        'CL': 1000.0,  # Crude Oil
        'GC': 100.0,   # Gold
        'SI': 5000.0,  # Silver
        'PL': 50.0,    # Platinum
        'PA': 100.0,   # Palladium
        'HG': 25000.0, # Copper
        'ZC': 50.0,    # Corn
        'ZW': 50.0,    # Wheat
        'ZS': 50.0,    # Soybeans
        'ZM': 100.0,   # Soybean Meal
        'ZL': 600.0,   # Soybean Oil
        'KC': 375.0,   # Coffee
        'CT': 500.0,   # Cotton
        'CC': 10.0,    # Cocoa
        'SB': 1120.0,  # Sugar
        'OJ': 150.0,   # Orange Juice
        'LB': 1100.0,  # Lumber
        'GF': 400.0,   # Feeder Cattle
        'LE': 400.0,   # Live Cattle
        'HE': 400.0,   # Lean Hogs
        '6E': 125000.0,# Euro FX
        '6J': 12500000.0,# Japanese Yen
        '6B': 62500.0, # British Pound
        '6A': 100000.0,# Australian Dollar
        '6C': 100000.0,# Canadian Dollar
        '6S': 125000.0,# Swiss Franc
        '6N': 100000.0,# New Zealand Dollar
        '6M': 3000000.0,# Mexican Peso
        'BTC': 5.0,    # Bitcoin
        'ETH': 50.0,   # Ethereum
    }
    
    return multipliers.get(base_symbol, 1.0)  # 如果找不到对应的乘数，返回1.0 